﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Entidades.Eventos;

public partial class Eventos_frmGenerarProforma : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //add yohana
        GenCliente cliente = (GenCliente)Session["clienteSeleccionado"];
        EveEvento evento = (EveEvento)Session["eventoSeleccionado"];
        List<EveDetalleReserva> listaDetalleReserva = (List<EveDetalleReserva>)Session["detallesReservaSeleccionados"];

        fillClientInformation(cliente);
        fillEventoAndProductsInformation(evento, listaDetalleReserva); //add yohana
    }

    //add yohana
    void fillClientInformation(GenCliente nuevoCliente)
    {
        nombreCliente.InnerText = nuevoCliente.nombre;
        telefono.InnerText = nuevoCliente.telefono;
        fechaNacimiento.InnerText = nuevoCliente.fechaNacimiento.Value.ToString("dd/MM/yyyy");
        email.InnerText = nuevoCliente.email;
        direccion.InnerText = nuevoCliente.direccion;
        numeroDocumento.InnerText = nuevoCliente.NroDocumento;
    }

    //add yohana
    void fillEventoAndProductsInformation(EveEvento eventoSelected, List<EveDetalleReserva> detallesReserva)
    {
        nombreEvento.InnerText = eventoSelected.nombre;
        tipoEvento.InnerText = eventoSelected.Eve_Tipo_evento.nombre;
        //add yohana
        EveReserva reserva = (EveReserva)Session["nuevaReserva"];

        fechaRealizacion.InnerText = reserva.fechaRealizacion.Value.ToString("dd/MM/yyyy");
        numeroAsistentes.InnerText = reserva.cantidadPersonas.ToString();
        horaRealizacion.InnerText = reserva.horarealizacion;
        total.InnerText = reserva.totalMonto.Value.ToString("0.00");

        //fill products table
        foreach (EveProductoEvento itemTMP in eventoSelected.Eve_Producto_evento)
        {
            decimal? montoConDescuento = itemTMP.Eve_Producto.monto - itemTMP.descuento;
            //add yohana
            EveDetalleReserva detalleTMP = detallesReserva.Where(det => det.idProducto == itemTMP.idProducto).FirstOrDefault();

            TableRow tr1 = new TableRow();

            TableCell tc1 = new TableCell(); //Producto
            Label lbl1 = new Label();
            lbl1.Text = itemTMP.Eve_Producto.nombre;
            tc1.Controls.Add(lbl1);

            TableCell tc2 = new TableCell(); //Cantidad
            tc2.ID = "cantidadtc" + itemTMP.idProducto;
            Label lblCantidad = new Label();
            lblCantidad.Text = detalleTMP.cantidadProducto.ToString(); //add yohana
            tc2.Controls.Add(lblCantidad);

            TableCell tc3 = new TableCell(); //Precio Unitario
            Label lbl3 = new Label();
            lbl3.Text = montoConDescuento.Value.ToString("0.00");
            tc3.Controls.Add(lbl3);

            TableCell tc4 = new TableCell(); //Subtotal
            Label lbl4 = new Label();
            lbl4.Text = detalleTMP.subtotal.Value.ToString("0.00"); //add yohana
            tc4.Controls.Add(lbl4);

            tr1.Cells.Add(tc1);
            tr1.Cells.Add(tc2);
            tr1.Cells.Add(tc3);
            tr1.Cells.Add(tc4);

            tablaProductos.Rows.Add(tr1);
        }
    }
}